fun main(args: Array<String>) {

    println(decimalDigitValue(11.toChar()))

}

/**
 * 在kotlin中字符用char类型表示。并且不能像java一样直接当作数字
 */
fun testChar(char: Char) {

//    if (char == 4) {} // 此处会提示类型不匹配的异常

}


/**
 * 字符的值用单引号括起来: '1'。 特殊字符可以用反斜杠转义。 支持这几个转义序列：\t、 \b、\n、\r、\'、\"、\\ 与 \$。 编码其他字符要用 Unicode 转义序列语法：'\uFF00'。
 * 虽然不能直接把它当作数字来用，但是我们可以通过decimalDigitValue函数将字符转换成数字，注意可空类型 Char? 类型会存在装箱操作
 */
fun decimalDigitValue(c: Char): Int {
    if (c !in '0'..'9')
        throw IllegalArgumentException("Out of range")
    return c.toInt() - '0'.toInt() // 显式转换为数字
}
